<!--[if lte IE 9]><script>(function(f){window.setTimeout=f(window.setTimeout);window.setInterval=f(window.setInterval)})(function(f){return function(c,t){var a=[].slice.call(arguments,2);return f(function(){c.apply(this,a)},t)}});</script><![endif]-->
<!--[if IE 8]><script src="https://cdn.bootcss.com/ie8/0.8.0/ie8.js"></script><![endif]-->
<script src="https://cdn.bootcss.com/dom4/1.8.5/dom4.max.js"></script>
<!--[if IE 8]>
<script src="assets/js/dre-ie8-upfront-fix.max.js"></script>
<![endif]-->
<script src="https://cdn.bootcss.com/document-register-element/1.7.0/document-register-element.js"></script>
<!--[if IE 8]>
<script src="https://cdn.bootcss.com/es5-shim/4.5.10/es5-shim.js"></script>
<script src="https://cdn.bootcss.com/es5-shim/4.5.10/es5-sham.js"></script>
<![endif]-->

<script>
(function() {
  Object.defineProperty(HTMLInputElement.prototype, "auiValue", {
    get: function() {
      return this.value;
    },
    set: function(newval) {
      if (
          (this.hasAttribute("polyfill-input-type") && this.getAttribute("polyfill-input-type") === "number") || 
          this.type === "number"
      ) {
        if (!(/^-?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?$/.test(newval))) {
            console.warn('The specified value " '+newval.toString()+' " is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?');
            return;
        }
      }

      this.value = newval;
    }
  });
})(); 
</script>


